// 需求1. 封装格式化时间函数，支持 Date 和 string 格式的时间，转换成功 `10:10:10` 时分秒
// 要求：
//     1. formatTime()  返回 当前时分秒，如： 18:18:10
//     2. formatTime('2023-02-01 10:10:10')  返回 时分秒，如： 10:10:10
var formatTime = function (time) {
    var _time = new Date();
    // 不存在time
    if (!time) {
        _time = new Date();
    }
    if (typeof time === "string") {
        // 存在time
        _time = new Date(time);
    }
    if (typeof time == "object") {
        _time = time;
    }
    var h = _time.getHours();
    var m = _time.getMinutes();
    var s = _time.getSeconds();
    return "".concat(h, ":").concat(m, ":").concat(s);
};
// 需求：去掉所有的any
var KEY = "ts-demo-data";
var render = function () {
    var str = localStorage.getItem(KEY);
    // const list = JSON.parse(str);
    // 1. 去掉any后，使用逻辑或给parse传字符串数组
    var list = JSON.parse(str || "[]");
    var lastItem = list[list.length - 1];
    list.push({
        // 要求：🔔 conut拼错了，要求报错，改为count
        //❌ conut: lastItem ? lastItem.count + 1 : 1,
        // 3. 修改conut 为count
        count: lastItem ? lastItem.count + 1 : 1,
        time: formatTime()
    });
    localStorage.setItem(KEY, JSON.stringify(list));
    // 4. 去掉any ， as断言HTMLDivElement
    var app = document.querySelector("#app");
    app.innerHTML = list
        .map(function (item) { return "\u6B21\u6570\uFF1A".concat(item.count, "\uFF0C\u65F6\u95F4\uFF1A").concat(item.time); })
        .join("<br/>");
};
render();
/*
  学习目标：在浏览器中运行, 并且修复遇到的问题
  步骤：
     1. tsc 编译ts为js
     2. 新建html, 引入编译后的js
     3. 运行, 修复问题
*/
